﻿using MusicStore.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MusicStore.Controllers
{
    //public class NewController : Controller
    //{
    //    private MusicStoreDB db = new MusicStoreDB();
    //    public ActionResult seachTableArtis()
    //    {   //Linq
    //        var artisList1 = from x in db.Set<Artist>() select x;
    //        // var query1 = from x in db.Set<Artist>() select x;
    //        //labda
    //        var artists1 = db.Set<Artist>();
    //        // Linq单条件查询
    //        artisList1 = from c in db.Set<Artist>()
    //                     where c.Name.Contains("AC")
    //                     select c;
    //        // lambda单条件查询
    //        artists1 = db.Set<Artist>()
    //        .Select(x => x)
    //        .Where(x => x.Name.Contains("ac"));
    //        //linq多表查询
    //        var query1 = from x in db.Set<Album>()
    //                     join y in db.Artists on x.Artist.ArtistId equals y.ArtistId
    //                     where y.Name.Contains("ac")
    //                     select x;
    //        //lanbad多表查询
    //        var querry2 = db.Set<Album>()
    //            .Join(db.Set<Genre>(), x => x.Genre.GenreId, y => y.GenreId, (x, y) => x);
    //        //指定列查询
    //        var query3 = from x in db.Set<Artist>()
    //                     select new { a = x.ArtistId, b = x.Name };
    //        //查询Album、Artist,指定列表ArtistName,AlbumTitle.Price
    //        var alubumAndArrist = from a in db.Set<Album>()
    //                              join b in db.Set<Artist>() on a.Artist.ArtistId equals b.ArtistId
    //                              select new
    //                              {
    //                                  ArtisName = a.Artist.Name,
    //                                  AlbumTitle = a.Title,
    //                                  price = a.Price
    //                              };
    //        //查询Album、Artist,指定列表ArtistName,AlbumTitle.Price只要第一条记录
    //        var alubumAndArrist1 = db.Set<Album>()
    //                               .Join(db.Set<Artist>(), a => a.Artist.ArtistId, b => b.ArtistId, (a, b) => a)
    //                               .Select(a => (new { title = a.Title, price = a.Price, artist = a.Artist.Name }));
    //        //.FirstOrDefault();//取第一条数据
    //        // OrderBy(x => x.price);//升序排序Albums1
    //        //封装分页显示

    //        //int  pageSize = 15;
    //        //var pageIndex = 1;
    //        //var query=GetPagList(Album ,int>(pageSize,pageIndex,x=>x.Title.Contains("ac"),x=>x.AlbumId)
    //        //return View();
    //    }
    //    //分页查询泛型实现
    //    //public List<Album>GetPagList<TKey>(int pagSize ,int pageIndex,Exception<Func<Album,bool>>where=null,Exception)
    //    // {
    //    //     var query = from a in db.Albums select a;
    //    //      if (where !=null )
    //    //     {
    //    //         query = query.Where(where);
    //    //     }
    //    //     var data = query.OrderByDescending(orderby).ToList();
    //    //     return data;
    //    // }
    //    // GET: New
        
    //    public ActionResult Index()
    //    {
    //        return View();
    //    }
    //}
}